import { LanguageType } from "@/enums/LanguageEnum";

export type TagsType = {
    path: string,
    name: string,
    meta: {
        title: string,
        icon: string,
        cache: boolean
    },
}

/**
 * AppState 状态类型
 */
export interface AppState {
    // 状态定义
    i18n: boolean;
    collapse: boolean;
    language: LanguageType;
    tagsnav: TagsType[];
}

/**
 * LayoutState 状态类型
 */
export interface LayoutState {
    mainLoading: {
        open: boolean
    }
}

/**
 * UserState 状态类型
 */
export interface UserState {
    // 状态定义
    user: {
        UserId: number,
        Username: number
    };
    config: object;
}

/**
 * store 根状态类型
 */
export interface RootState {
    // 你的根状态结构
    app: AppState;
    user: UserState;
    layout: LayoutState;
}